package com.cs.contract.mapper;

import com.cs.contract.domain.CsContract;
import com.cs.contract.domain.CsPubAttachments;
import com.cs.contract.domain.CsTender;
import com.cs.contract.domain.NonTenderProject;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;


/**
 * @Author：zrx
 * @Package：com.cs.cscontract.mapper
 * @Project：Ruoyi
 * @name：CsContractMapper
 * @Date：2024/11/18 15:45
 * @Filename：CsContractMapper
 */
@Mapper
public interface CsContractMapper {
    /**
     * 查询合同
     *
     * @param eid 合同主键
     * @return 合同
     */
    CsContract getCsContractByEid(Integer eid);

    /**
     * 查询合同列表
     *
     * @param csContract 合同
     * @return 合同集合
     */
    List<CsContract> listCsContract(CsContract csContract);

    /**
     * 查询招标签订中合同列表
     *
     * @param csContract 合同
     * @return 合同集合
     */
    List<CsContract> listCsContract2(CsContract csContract);

    /**
     * 获取附件详细信息
     *
     * @param eid
     * @return
     */
    CsPubAttachments getCsPubAttachmentsByEid(Integer eid);

    /**
     * 修改合同
     *
     * @param csContract 合同
     * @return 结果
     */
    Integer updateCsContract(CsContract csContract);

    /**
     * 删除公共附件
     *
     * @param eid
     * @return
     */
    Integer deleteCsPubAttamentsByEid(Integer eid);

    /**
     * 修改公共附件
     *
     * @param csPubAttachments
     * @return
     */
    Integer updateCsPubAttachments(CsPubAttachments csPubAttachments);

    /**
     * 合同作废
     *
     * @param eid
     * @return
     */
    Integer updateHtCancel(Integer eid);

    /**
     * 修改非招标Eid为空
     *
     * @param nonTenderProject
     * @return
     */
    Integer updateNonTenderProject(NonTenderProject nonTenderProject);

    /**
     * 修改招标Eid为空
     *
     * @param csTender
     * @return
     */
    Integer updateCsTender(CsTender csTender);

    /**
     * 删除合同信息
     *
     * @param eid 合同主键
     * @return 结果
     */
    Integer deleteCsContractByEid(Integer eid);

    /**
     * 修改合同管理状态
     *
     * @param csContract
     * @return
     */
    Integer updateoHstatus(CsContract csContract);

    /**
     * 新增合同
     *
     * @param csContract 合同
     * @return 结果
     */
    Integer insertCsContract(CsContract csContract);

    /**
     * 修改招标项目eid
     *
     * @param csTender
     * @return
     */
    Integer updateCsTenderEid(CsTender csTender);

    /**
     * 新增公共附件
     *
     * @param csPubAttachments
     * @return
     */
    Integer insertCsPubAttachments(CsPubAttachments csPubAttachments);
}
